package com.boarsoft.boar.flow.entity;

import java.io.Serializable;

import com.boarsoft.flow.core.SimpleFlow;

public class FlowInst implements Serializable {
	private static final long serialVersionUID = -3730200869095867915L;

	/** 流程实例ID，主键 */
	protected String id;
	/** 流程定义ID */
	protected String flowId;
	/** */
	protected String name;
	/** */
	protected String step;
	/** */
	protected Object data;
	/** */
	protected short status = SimpleFlow.STATUS_NEW;
	/** */
	protected Object error;
	/** */
	protected long startTime;
	/** */
	protected long endTime;
	/** */
	protected long time;
	/** */
	protected long deadline;
	/** 冲正类型 */
	protected short revType;
	/** 冲正类型 */
	protected String revCode = "";
	/** 反交易入口（来自：当正交易失败时，其当前节点的revCode） */
	protected String revEntry = "";
	/** 正交易实例ID（如果当前流程是反交易的话） */
	protected String revFor = "";
	/** 冲正次数 */
	protected int revTime;
	/** 冲正次数上限 */
	protected int revLimit = 3;
	/** 冲正状态 */
	protected short revStatus = SimpleFlow.REV_NONE;
	/** 冲正异常 */
	protected Object revError;
	/** 执行流程的节点 */
	protected String addr;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getFlowId() {
		return flowId;
	}

	public void setFlowId(String flowId) {
		this.flowId = flowId;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getStep() {
		return step;
	}

	public void setStep(String step) {
		this.step = step;
	}

	public Object getData() {
		return data;
	}

	public void setData(Object data) {
		this.data = data;
	}

	public short getStatus() {
		return status;
	}

	public void setStatus(short status) {
		this.status = status;
	}

	public Object getError() {
		return error;
	}

	public void setError(Object error) {
		this.error = error;
	}

	public long getStartTime() {
		return startTime;
	}

	public void setStartTime(long startTime) {
		this.startTime = startTime;
	}

	public long getEndTime() {
		return endTime;
	}

	public void setEndTime(long endTime) {
		this.endTime = endTime;
	}

	public long getDeadline() {
		return deadline;
	}

	public void setDeadline(long deadline) {
		this.deadline = deadline;
	}

	public String getRevFor() {
		return revFor;
	}

	public void setRevFor(String revFor) {
		this.revFor = revFor;
	}

	public int getRevTime() {
		return revTime;
	}

	public void setRevTime(int revTime) {
		this.revTime = revTime;
	}

	public int getRevLimit() {
		return revLimit;
	}

	public void setRevLimit(int revLimit) {
		this.revLimit = revLimit;
	}

	public short getRevType() {
		return revType;
	}

	public void setRevType(short revType) {
		this.revType = revType;
	}

	public String getRevCode() {
		return revCode;
	}

	public void setRevCode(String revCode) {
		this.revCode = revCode;
	}

	public short getRevStatus() {
		return revStatus;
	}

	public void setRevStatus(short revStatus) {
		this.revStatus = revStatus;
	}

	public Object getRevError() {
		return revError;
	}

	public void setRevError(Object revError) {
		this.revError = revError;
	}

	public String getAddr() {
		return addr;
	}

	public void setAddr(String addr) {
		this.addr = addr;
	}

	public String getRevEntry() {
		return revEntry;
	}

	public void setRevEntry(String revEntry) {
		this.revEntry = revEntry;
	}

	public long getTime() {
		return time;
	}

	public void setTime(long time) {
		this.time = time;
	}
}
